#ifndef __LINKEDLIST_H__
#define __LINKEDLIST_H__
typedef int ElemType;
typedef struct Node  //数据节点的类型
{
    ElemType data;//数据域
    struct Node*next;//指向下一个数据节点
}Node;

extern struct Node*Create_input_LinkedList();

extern void Print_LinkedList(struct Node*first);
extern struct Node*Insert_LinkedList_front(struct Node*first, ElemType x);
extern struct Node*Insert_LinkedList_tail(struct Node*first, ElemType x);
extern struct Node* Insert_node_y(struct Node*first, ElemType x,ElemType y);
extern struct Node* Insert_node_y_behind_x(struct Node*first, ElemType x,ElemType y);
extern struct Node*Delete_x_node(struct Node*first, ElemType x);
extern struct Node*Delete_all_x_node(struct Node*first, ElemType x);
extern struct Node*Create_sort_LinkedList();
extern struct Node*Reverse_LinkedList_1(struct Node*first);
extern struct Node*Reverse_LinkedList_2(struct Node*first);
#endif